{"_id":"56d02fc81991690b003b2a8e","__v":1,"parentDoc":null,"user":"56a0cf0c41766e0d00b28cf9","category":{"_id":"5693b82173f48f0d0075c90d","version":"568fce2b04440a1700e4cb4a","pages":["56ab8a0f678b58170031ebab","56ab93620b9e0b0d00616245","56af63088be2ea0d00b4886e","56d02fc81991690b003b2a8e"],"project":"568fce2a04440a1700e4cb47","__v":4,"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2016-01-11T14:11:45.170Z","from_sync":false,"order":8,"slug":"inbound-message-forwarding","title":"Forwarding"},"project":"568fce2a04440a1700e4cb47","version":{"_id":"568fce2b04440a1700e4cb4a","project":"568fce2a04440a1700e4cb47","__v":20,"createdAt":"2016-01-08T14:56:43.101Z","releaseDate":"2016-01-08T14:56:43.101Z","categories":["568fce2b04440a1700e4cb4b","568fd1b8b700ce0d002f4b1c","568fd23804440a1700e4cb5b","568fd2444719c119002ce5d8","568ff21204440a1700e4cbc1","5693732c8aa8040d009f2c28","5693738393445b0d00abdad0","5693740093445b0d00abdad1","56937445974aaa0d001ca699","5693b82173f48f0d0075c90d","5694c4cd1005590d0062cb25","569f854466a5640d00efa54c","56a264cdd15dd70d008d825b","56aa56bf318e6c1700a19ddb","56b0e6347ae4550d000627bd","56b200c0f48f270d00e0de6f","56b200c6f48f270d00e0de70","56b22a9665ddf50d0076ba40","56e92ef71996862200fd7f42","574d6577fb835c0e00ca316a"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"","version_clean":"1.0.0","version":"1.0"},"updates":[],"next":{"pages":[],"description":""},"createdAt":"2016-02-26T10:58:16.467Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"settings":"","results":{"codes":[]},"auth":"required","params":[],"url":""},"isReference":false,"order":4,"body":"When forwarding an inbound message or receipt to your handlers URL, we set a 10 second time out. If the remote server does not return HTTP 200 (OK) in this time we will enter a retry cycle.\nWe recommend that when you receive forwarded data that you simply queue it and then process it to ensure you can accept data within the 10 second limit, also it is recommended testing that an inbound or receipt hasn't already been received and handled.\n\nThe retry strategy is designed to gradually back off, allowing your servers to recover should they become overloaded or still warming up. The retry schedule is as follows, and will take a maximum time of 140 mins from the first attempt:\n\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Retry Attempt\",\n    \"h-1\": \"Delay\",\n    \"0-0\": \"1\",\n    \"1-0\": \"2\",\n    \"2-0\": \"3\",\n    \"3-0\": \"4\",\n    \"4-0\": \"5\",\n    \"5-0\": \"6\",\n    \"6-0\": \"7\",\n    \"0-1\": \"1\",\n    \"1-1\": \"4\",\n    \"2-1\": \"9\",\n    \"3-1\": \"16\",\n    \"4-1\": \"25\",\n    \"5-1\": \"36\",\n    \"6-1\": \"49\"\n  },\n  \"cols\": 2,\n  \"rows\": 7\n}\n[/block]","excerpt":"","slug":"forwarding-retries","type":"basic","title":"Forwarding Retries"}

Forwarding Retries


When forwarding an inbound message or receipt to your handlers URL, we set a 10 second time out. If the remote server does not return HTTP 200 (OK) in this time we will enter a retry cycle. We recommend that when you receive forwarded data that you simply queue it and then process it to ensure you can accept data within the 10 second limit, also it is recommended testing that an inbound or receipt hasn't already been received and handled. The retry strategy is designed to gradually back off, allowing your servers to recover should they become overloaded or still warming up. The retry schedule is as follows, and will take a maximum time of 140 mins from the first attempt: [block:parameters] { "data": { "h-0": "Retry Attempt", "h-1": "Delay", "0-0": "1", "1-0": "2", "2-0": "3", "3-0": "4", "4-0": "5", "5-0": "6", "6-0": "7", "0-1": "1", "1-1": "4", "2-1": "9", "3-1": "16", "4-1": "25", "5-1": "36", "6-1": "49" }, "cols": 2, "rows": 7 } [/block]