Merge branch 'feat-messages-event-config' of https://github.com/appwrite/appwrite into feat-mailgun-provider
This commit is contained in:
commit
ddbee0a55b
5 changed files with 10 additions and 321 deletions
|
@ -1,300 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'email' => [
|
|
||||||
'mailchimp' => [
|
|
||||||
'name' => 'Mailchimp',
|
|
||||||
'developers' => 'https://mailchimp.com/developer/marketing/api/',
|
|
||||||
'icon' => 'icon-mailchimp',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'mailgun' => [
|
|
||||||
'name' => 'Mailgun',
|
|
||||||
'developers' => 'https://documentation.mailgun.com/',
|
|
||||||
'icon' => 'icon-mailgun',
|
|
||||||
'enabled' => true,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'mailjet' => [
|
|
||||||
'name' => 'Mailjet',
|
|
||||||
'developers' => 'https://dev.mailjet.com/',
|
|
||||||
'icon' => 'icon-mailjet',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'postmark' => [
|
|
||||||
'name' => 'Postmark',
|
|
||||||
'developers' => 'https://postmarkapp.com/developer',
|
|
||||||
'icon' => 'icon-postmark',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'sendgrid' => [
|
|
||||||
'name' => 'Sendgrid',
|
|
||||||
'developers' => 'https://docs.sendgrid.com/api-reference/how-to-use-the-sendgrid-v3-api/',
|
|
||||||
'icon' => 'icon-sendgrid',
|
|
||||||
'enabled' => true,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'sendinblue' => [
|
|
||||||
'name' => 'SendinBlue',
|
|
||||||
'developers' => 'https://developers.sendinblue.com/',
|
|
||||||
'icon' => 'icon-sendinblue',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'mailslurp' => [
|
|
||||||
'name' => 'MailSlurp',
|
|
||||||
'developers' => 'https://www.mailslurp.com/docs/',
|
|
||||||
'icon' => 'icon-mailslurp',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'elasticemail' => [
|
|
||||||
'name' => 'ElasticEmail',
|
|
||||||
'developers' => 'https://api.elasticemail.com/public/help',
|
|
||||||
'icon' => 'icon-elasticemail',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'ses' => [
|
|
||||||
'name' => 'SES',
|
|
||||||
'developers' => 'https://docs.aws.amazon.com/ses/latest/APIReference/',
|
|
||||||
'icon' => 'icon-ses',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
],
|
|
||||||
'sms' => [
|
|
||||||
'africastalking' => [
|
|
||||||
'name' => 'Africa\'s Talking',
|
|
||||||
'developers' => 'https://developers.africastalking.com/',
|
|
||||||
'icon' => 'icon-africastalking',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'clickatell' => [
|
|
||||||
'name' => 'Clickatell',
|
|
||||||
'developers' => 'https://www.clickatell.com/developers/api-docs/',
|
|
||||||
'icon' => 'icon-clickatell',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'infobip' => [
|
|
||||||
'name' => 'Infobip',
|
|
||||||
'developers' => 'https://www.infobip.com/docs/',
|
|
||||||
'icon' => 'icon-infobip',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'msg91' => [
|
|
||||||
'name' => 'Msg91',
|
|
||||||
'developers' => 'https://docs.msg91.com/reference/overview',
|
|
||||||
'icon' => 'icon-msg91',
|
|
||||||
'enabled' => true,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'plivo' => [
|
|
||||||
'name' => 'Plivo',
|
|
||||||
'developers' => 'https://developers.plivo.com/',
|
|
||||||
'icon' => 'icon-plivo',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'sinch' => [
|
|
||||||
'name' => 'Sinch',
|
|
||||||
'developers' => 'https://developers.sinch.com/',
|
|
||||||
'icon' => 'icon-sinch',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'sms77' => [
|
|
||||||
'name' => 'Sms77',
|
|
||||||
'developers' => 'https://sms77.io/docs/gateway/',
|
|
||||||
'icon' => 'icon-sms77',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'telesign' => [
|
|
||||||
'name' => 'Telesign',
|
|
||||||
'developers' => 'https://developer.telesign.com/enterprise/docs',
|
|
||||||
'icon' => 'icon-telesign',
|
|
||||||
'enabled' => true,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'textmagic' => [
|
|
||||||
'name' => 'TextMagic',
|
|
||||||
'developers' => 'https://www.textmagic.com/docs/api/',
|
|
||||||
'icon' => 'icon-twilio',
|
|
||||||
'enabled' => true,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'twilio' => [
|
|
||||||
'name' => 'Twilio',
|
|
||||||
'developers' => 'https://www.twilio.com/docs/sms',
|
|
||||||
'icon' => 'icon-twilio',
|
|
||||||
'enabled' => true,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'twilio-notify' => [
|
|
||||||
'name' => 'Twilio Notify',
|
|
||||||
'developers' => 'https://www.twilio.com/docs/notify',
|
|
||||||
'icon' => 'icon-twilio',
|
|
||||||
'enabled' => true,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'vonage' => [
|
|
||||||
'name' => 'Vonage',
|
|
||||||
'developers' => 'https://developer.nexmo.com/',
|
|
||||||
'icon' => 'icon-vonage',
|
|
||||||
'enabled' => true,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
],
|
|
||||||
'push' => [
|
|
||||||
'apns' => [
|
|
||||||
'name' => 'APNS',
|
|
||||||
'developers' => 'https://developer.apple.com/documentation/usernotifications',
|
|
||||||
'icon' => 'icon-apns',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'fcm' => [
|
|
||||||
'name' => 'FCM',
|
|
||||||
'developers' => 'https://firebase.google.com/docs/cloud-messaging',
|
|
||||||
'icon' => 'icon-fcm',
|
|
||||||
'enabled' => true,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'one_signal' => [
|
|
||||||
'name' => 'OneSignal',
|
|
||||||
'developers' => 'https://documentation.onesignal.com/docs',
|
|
||||||
'icon' => 'icon-onesignal',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'pushbullet' => [
|
|
||||||
'name' => 'PushBullet',
|
|
||||||
'developers' => 'https://docs.pushbullet.com/',
|
|
||||||
'icon' => 'icon-pushbullet',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'pusher' => [
|
|
||||||
'name' => 'Pusher',
|
|
||||||
'developers' => 'https://pusher.com/docs',
|
|
||||||
'icon' => 'icon-pusher',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'pushwoosh' => [
|
|
||||||
'name' => 'Pushwoosh',
|
|
||||||
'developers' => 'https://www.pushwoosh.com/docs/',
|
|
||||||
'icon' => 'icon-pushwoosh',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'urban_airship' => [
|
|
||||||
'name' => 'Urban Airship',
|
|
||||||
'developers' => 'https://docs.airship.com/api/',
|
|
||||||
'icon' => 'icon-urbanairship',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
'web_push' => [
|
|
||||||
'name' => 'WebPush',
|
|
||||||
'developers' => 'https://developer.mozilla.org/en-US/docs/Web/API/Push_API',
|
|
||||||
'icon' => 'icon-webpush',
|
|
||||||
'enabled' => false,
|
|
||||||
'sandbox' => false,
|
|
||||||
'form' => false,
|
|
||||||
'beta' => false,
|
|
||||||
'mock' => false,
|
|
||||||
],
|
|
||||||
]
|
|
||||||
];
|
|
|
@ -2,9 +2,6 @@
|
||||||
|
|
||||||
namespace Appwrite\Utopia;
|
namespace Appwrite\Utopia;
|
||||||
|
|
||||||
use Appwrite\Utopia\Response\Model\Message;
|
|
||||||
use Appwrite\Utopia\Response\Model\Subscriber;
|
|
||||||
use Appwrite\Utopia\Response\Model\Topic;
|
|
||||||
use Exception;
|
use Exception;
|
||||||
use Swoole\Http\Request as SwooleRequest;
|
use Swoole\Http\Request as SwooleRequest;
|
||||||
use Utopia\Swoole\Response as SwooleResponse;
|
use Utopia\Swoole\Response as SwooleResponse;
|
||||||
|
@ -84,6 +81,9 @@ use Appwrite\Utopia\Response\Model\HealthVersion;
|
||||||
use Appwrite\Utopia\Response\Model\Installation;
|
use Appwrite\Utopia\Response\Model\Installation;
|
||||||
use Appwrite\Utopia\Response\Model\LocaleCode;
|
use Appwrite\Utopia\Response\Model\LocaleCode;
|
||||||
use Appwrite\Utopia\Response\Model\Provider;
|
use Appwrite\Utopia\Response\Model\Provider;
|
||||||
|
use Appwrite\Utopia\Response\Model\Message;
|
||||||
|
use Appwrite\Utopia\Response\Model\Subscriber;
|
||||||
|
use Appwrite\Utopia\Response\Model\Topic;
|
||||||
use Appwrite\Utopia\Response\Model\ProviderRepository;
|
use Appwrite\Utopia\Response\Model\ProviderRepository;
|
||||||
use Appwrite\Utopia\Response\Model\Runtime;
|
use Appwrite\Utopia\Response\Model\Runtime;
|
||||||
use Appwrite\Utopia\Response\Model\Target;
|
use Appwrite\Utopia\Response\Model\Target;
|
||||||
|
|
|
@ -6,7 +6,7 @@ use Appwrite\Utopia\Response;
|
||||||
use Appwrite\Utopia\Response\Model;
|
use Appwrite\Utopia\Response\Model;
|
||||||
use Utopia\Database\DateTime;
|
use Utopia\Database\DateTime;
|
||||||
|
|
||||||
class Message extends Model
|
class Message extends Any
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* @var bool
|
* @var bool
|
||||||
|
@ -28,17 +28,11 @@ class Message extends Model
|
||||||
'default' => '',
|
'default' => '',
|
||||||
'example' => '5e5ea5c16897e',
|
'example' => '5e5ea5c16897e',
|
||||||
])
|
])
|
||||||
->addRule('data', [
|
|
||||||
'type' => self::TYPE_JSON,
|
|
||||||
'description' => 'Message Data.',
|
|
||||||
'default' => '',
|
|
||||||
'required' => false,
|
|
||||||
'example' => '',
|
|
||||||
])
|
|
||||||
->addRule('to', [
|
->addRule('to', [
|
||||||
'type' => self::TYPE_STRING,
|
'type' => self::TYPE_STRING,
|
||||||
'description' => 'Recipient of message.',
|
'description' => 'Recipient of message.',
|
||||||
'default' => '',
|
'default' => '',
|
||||||
|
'array' => true,
|
||||||
'example' => ['user-1'],
|
'example' => ['user-1'],
|
||||||
])
|
])
|
||||||
->addRule('deliveryTime', [
|
->addRule('deliveryTime', [
|
||||||
|
@ -53,6 +47,7 @@ class Message extends Model
|
||||||
'description' => 'Delivery error if any.',
|
'description' => 'Delivery error if any.',
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'default' => '',
|
'default' => '',
|
||||||
|
'array' => true,
|
||||||
'example' => 'Provider not valid.',
|
'example' => 'Provider not valid.',
|
||||||
])
|
])
|
||||||
->addRule('deliveredTo', [
|
->addRule('deliveredTo', [
|
||||||
|
@ -66,12 +61,6 @@ class Message extends Model
|
||||||
'description' => 'Status of delivery.',
|
'description' => 'Status of delivery.',
|
||||||
'default' => '',
|
'default' => '',
|
||||||
'example' => true,
|
'example' => true,
|
||||||
])
|
|
||||||
->addRule('search', [
|
|
||||||
'type' => self::TYPE_STRING,
|
|
||||||
'description' => 'Field that can be used for searching message.',
|
|
||||||
'default' => '',
|
|
||||||
'example' => 'Hello everyone',
|
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -138,7 +138,7 @@ class Project extends Model
|
||||||
'default' => false,
|
'default' => false,
|
||||||
'example' => true,
|
'example' => true,
|
||||||
])
|
])
|
||||||
->addRule('providers', [
|
->addRule('authProviders', [
|
||||||
'type' => Response::MODEL_AUTH_PROVIDER,
|
'type' => Response::MODEL_AUTH_PROVIDER,
|
||||||
'description' => 'List of Auth Providers.',
|
'description' => 'List of Auth Providers.',
|
||||||
'default' => [],
|
'default' => [],
|
||||||
|
|
|
@ -23,19 +23,19 @@ class Provider extends Model
|
||||||
])
|
])
|
||||||
->addRule('name', [
|
->addRule('name', [
|
||||||
'type' => self::TYPE_STRING,
|
'type' => self::TYPE_STRING,
|
||||||
'description' => 'The user-given name for the provider instance.',
|
'description' => 'The name for the provider instance.',
|
||||||
'default' => '',
|
'default' => '',
|
||||||
'example' => 'Mailgun',
|
'example' => 'Mailgun',
|
||||||
])
|
])
|
||||||
->addRule('provider', [
|
->addRule('provider', [
|
||||||
'type' => self::TYPE_STRING,
|
'type' => self::TYPE_STRING,
|
||||||
'description' => 'Provider name setup in Utopia.',
|
'description' => 'The name of the provider service.',
|
||||||
'default' => '',
|
'default' => '',
|
||||||
'example' => 'mailgun',
|
'example' => 'mailgun',
|
||||||
])
|
])
|
||||||
->addRule('default', [
|
->addRule('default', [
|
||||||
'type' => self::TYPE_BOOLEAN,
|
'type' => self::TYPE_BOOLEAN,
|
||||||
'description' => 'Default provider or not.',
|
'description' => 'Is this a pre-configured provider instance?',
|
||||||
'default' => '',
|
'default' => '',
|
||||||
'example' => true,
|
'example' => true,
|
||||||
])
|
])
|
||||||
|
|
Loading…
Reference in a new issue