【发布时间】:2016-11-06 06:49:47
【问题描述】:
如何从站点中的 SMS 网关(通常)获取响应?
【问题讨论】:
-
请使用您正在使用的相关
php代码更新您的问题。还有什么是预期的输出,什么是实际的结果。
标签: php http sms response gateway
如何从站点中的 SMS 网关(通常)获取响应?
【问题讨论】:
php 代码更新您的问题。还有什么是预期的输出,什么是实际的结果。
标签: php http sms response gateway
SMS 网关的文档应描述如何通过 HTTP 呈现数据;格式将特定于 SMS 网关,没有标准。
网关是否由第三方维护?如果它是您自己安装的,那么它如何呈现信息可能是其配置的一部分,问题不在此处讨论。
假设网关配置正确,您可以在 $_REQUEST 中看到网关提供的所有数据。在某些(非常模糊的)情况下,数据可能会以原始帖子的形式呈现。
只需捕获完整的请求即可查看数据的呈现方式。如果 PHP 在 Apache 中作为 mod_php 运行(你没有说),这是最简单的:
<?php
$log=tempnam("/tmp", 'mo_sms');
$output="started " . date('r') . "\n";
$headers = apache_request_headers();
foreach ($headers as $header => $value) {
$output.="$header : $value\n";
}
$output.="\n";
while (!feof(STDIN)) {
$output.=fgets($TDIN);
}
file_put_contents($log, $output);
请注意,这可能不会完成与网关的事务 - 它可能会期待某种数据已成功交付的确认(但可能会这样处理 HTTP 200)。
【讨论】: