deliveryreports_pkg

package
Version: v0.0.0-...-4b08ca5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 7, 2018 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

* messagemedia_messages_sdk * *

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DELIVERYREPORTS

type DELIVERYREPORTS interface {
	GetCheckDeliveryReports() (*models_pkg.CheckDeliveryReportsResponse, error)

	CreateConfirmDeliveryReportsAsReceived(*models_pkg.ConfirmDeliveryReportsAsReceivedRequest) (interface{}, error)
}

* Interface for the DELIVERYREPORTS_IMPL

func NewDELIVERYREPORTS

func NewDELIVERYREPORTS() DELIVERYREPORTS

* Factory for the DELIVERYREPORTS interaface returning DELIVERYREPORTS_IMPL

type DELIVERYREPORTS_IMPL

type DELIVERYREPORTS_IMPL struct{}

* Client structure as interface implementation

func (*DELIVERYREPORTS_IMPL) CreateConfirmDeliveryReportsAsReceived

func (me *DELIVERYREPORTS_IMPL) CreateConfirmDeliveryReportsAsReceived(
	body *models_pkg.ConfirmDeliveryReportsAsReceivedRequest) (interface{}, error)

*

* Mark a delivery report as confirmed so it is no longer return in check delivery reports requests.
* The confirm delivery reports endpoint is intended to be used in conjunction with the check delivery
* reports endpoint to allow for robust processing of delivery reports. Once one or more delivery
* reports have been processed, they can then be confirmed using the confirm delivery reports endpoint so they
* are no longer returned in subsequent check delivery reports requests.
* The confirm delivery reports endpoint takes a list of delivery report IDs as follows:
* ```json
* {
*     "delivery_report_ids": [
*         "011dcead-6988-4ad6-a1c7-6b6c68ea628d",
*         "3487b3fa-6586-4979-a233-2d1b095c7718",
*         "ba28e94b-c83d-4759-98e7-ff9c7edb87a1"
*     ]
* }
* ```
* Up to 100 delivery reports can be confirmed in a single confirm delivery reports request.
* @param    *models_pkg.ConfirmDeliveryReportsAsReceivedRequest        body     parameter: Required
* @return	Returns the interface{} response from the API call

func (*DELIVERYREPORTS_IMPL) GetCheckDeliveryReports

func (me *DELIVERYREPORTS_IMPL) GetCheckDeliveryReports() (*models_pkg.CheckDeliveryReportsResponse, error)

*

* Check for any delivery reports that have been received.
* Delivery reports are a notification of the change in status of a message as it is being processed.
* Each request to the check delivery reports endpoint will return any delivery reports received that
* have not yet been confirmed using the confirm delivery reports endpoint. A response from the check
* delivery reports endpoint will have the following structure:
* ```json
* {
*     "delivery_reports": [
*         {
*             "callback_url": "https://my.callback.url.com",
*             "delivery_report_id": "01e1fa0a-6e27-4945-9cdb-18644b4de043",
*             "source_number": "+61491570157",
*             "date_received": "2017-05-20T06:30:37.642Z",
*             "status": "enroute",
*             "delay": 0,
*             "submitted_date": "2017-05-20T06:30:37.639Z",
*             "original_text": "My first message!",
*             "message_id": "d781dcab-d9d8-4fb2-9e03-872f07ae94ba",
*             "vendor_account_id": {
*                 "vendor_id": "MessageMedia",
*                 "account_id": "MyAccount"
*             },
*             "metadata": {
*                 "key1": "value1",
*                 "key2": "value2"
*             }
*         },
*         {
*             "callback_url": "https://my.callback.url.com",
*             "delivery_report_id": "0edf9022-7ccc-43e6-acab-480e93e98c1b",
*             "source_number": "+61491570158",
*             "date_received": "2017-05-21T01:46:42.579Z",
*             "status": "enroute",
*             "delay": 0,
*             "submitted_date": "2017-05-21T01:46:42.574Z",
*             "original_text": "My second message!",
*             "message_id": "fbb3b3f5-b702-4d8b-ab44-65b2ee39a281",
*             "vendor_account_id": {
*                 "vendor_id": "MessageMedia",
*                 "account_id": "MyAccount"
*             },
*             "metadata": {
*                 "key1": "value1",
*                 "key2": "value2"
*             }
*         }
*     ]
* }
* ```
* Each delivery report will contain details about the message, including any metadata specified
* and the new status of the message (as each delivery report indicates a change in status of a
* message) and the timestamp at which the status changed. Every delivery report will have a
* unique delivery report ID for use with the confirm delivery reports endpoint.
* *Note: The source number and destination number properties in a delivery report are the inverse of
* those specified in the message that the delivery report relates to. The source number of the
* delivery report is the destination number of the original message.*
* Subsequent requests to the check delivery reports endpoint will return the same delivery reports
* and a maximum of 100 delivery reports will be returned in each request. Applications should use the
* confirm delivery reports endpoint in the following pattern so that delivery reports that have been
* processed are no longer returned in subsequent check delivery reports requests.
* 1. Call check delivery reports endpoint
* 2. Process each delivery report
* 3. Confirm all processed delivery reports using the confirm delivery reports endpoint
* *Note: It is recommended to use the Webhooks feature to receive reply messages rather than
* polling the check delivery reports endpoint.*
* @return	Returns the *models_pkg.CheckDeliveryReportsResponse response from the API call

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL