Nairobi
-
Posts
1 -
Joined
-
Last visited
Never
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.
sms application please help
in PHP Coding Help
Posted
hey guys iam developing an sms app in Kenya and ive hit a dead end. The app is a keyword response app where users can get match fixtures updates, league results,live updates etc please help . when i test the app on the sanbox i keep getting errors. here is the project outline
The API
The API is currently very straightforward. There is a single function you need to implement that our platform will call.
ETxtResponse ProcessEtxtRequest(ETxtRequest mo);
ETxtResponse and ETxtRequest both have the same properties
public Guid Id { get; set; }
public string Message { get; set; }
public string SessionState { get; set; }
public string CustomerState { get; set; }
Request:
Guid Id - you can use this to identify a unique session with a unique customer.
string Message - the text message the customer sent.
string SessionState - the transient session data retrieved by our platform and passed to you.
string CustomerState - the permanent customer data retrieved by our platform and passed to you.
Response:
Guid Id - Should be the same as the request you are responding to.
string Message - the text message you want us to send back to the customer.
string SessionState - the transient session data you want us to save.
string CustomerState - the permanent customer data you want us to save.
How you implement this method depends on the type of contract you choose.
There are currently 3 options - XML, JSON and FORM POST.
XML SOAP
XMLWebService : IServerApi
This is an XML-based implementation which will pass the request in SOAP-XML and expect a response as SOAP-XML.
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="false" />
<behaviors>
<serviceBehaviors>
<behavior name="FmnSoftBehavior" />
</serviceBehaviors>
</behaviors>
<services>
<service behaviorConfiguration="FmnSoftBehavior" name="FmnSoft.TestApiServices.Calculator">
<endpoint address="" binding="basicHttpBinding" contract="IServerApi" />
</service>
</services>
</system.serviceModel>
[serviceContract]
public interface IServerApi
{
[OperationContract]
ETxtResponse ProcessEtxtRequest(ETxtRequest mo);
}
JSON
JsonWebService : IJsonServerApi
This is a Javscript based implementation which will pass the request as a JSON encoded object and expect a response as a JSON encoded object.
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="false" />
<behaviors>
<serviceBehaviors>
<behavior name="FmnSoftBehavior" />
</serviceBehaviors>
<endpointBehaviors>
<behavior name="FmnSoftEndPoint">
<webHttp/>
</behavior>
</endpointBehaviors>
</behaviors>
<services>
<service name="FmnSoft.TestApiServices.JsonCalc" behaviorConfiguration=" FmnSoftBehavior ">
<endpoint address="" behaviorConfiguration="FmnSoftEndPoint" binding="webHttpBinding"
contract="IJsonServerApi" />
</service>
</services>
</system.serviceModel>
[serviceContract]
public interface IJsonServerApi
{
[OperationContract]
[WebInvoke(
Method = "POST",
UriTemplate = "/ProcessEtxtRequest",
RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json)]
ETxtResponse ProcessEtxtRequest(ETxtRequest mo);
}
FORM POST
FormPost implementation : text/xml response.
This is a HTTP-POST implementation which will pass the request as formdata in a HTTP POST. It will expect the response content-type to be "text/xml" and the response itself to be serialised to XML.
POST http://yourserver/yourform.htm HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Host: yourserver
Content-Length: 80
Expect: 100-continue
Connection: Keep-Alive
Id=d1a7ecd6-5fe5-4d5a-9d85-0c71aa1cbd04&Message=#c2&SessionState=&CustomerState=
The response you send back from this must be in XML format.
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: 140
Connection: Close
<mt>
<id>44b497d0-b43e-40c1-b0c0-d8c190b1e38f</id>
<msg>Reply with the second number to add</msg>
<sessionstate>3</sessionstate>
<customerstate>Pippa</customerstate>
</mt>
...
And here is my code
<?php
$id = $_POST["Id"];
$sessionstate = $_POST["SessionState"];
$customerstate = $_POST["CustomerState"];
$message = $_POST["Message"];
if ($message == “#ligi”){
$sessionState“”;
$msg=“ 1] match fixture <br /> 2] match results<br /> 3]leasgue standings<br /> 4]kpl news<br /> 5]Ongoing Live results”;
}
if ($message == “#1”){
$sessionState“”;
$msg=“match fixtures <br />
13:00hrs<br />
KCB vs Karuturi<br /> 15:00hrs<br /> Oserian vs Muhoroni<br />Mathare vs Western<br /> AFC vs Tusker ”;
}
if ($message == “#2”){
$sessionState“”;
$msg=“ match results<br /> 15-04-2012<br />Tusker 2 – 2 Mathare<br />Chemelil 1 – 0KCB<br />
Gor Mahia 1 – 0 sofapaka<br /> City Stars 0 – 0 Ulinzi Stars”;
}
if ($message = “#3”){
$sessionState“”;
$msg=“ leasgue standings <br /> As of 15-04-2012<br />AFC:26pts<br /> Sofapaka:20pts<br />Chemelil:20pts<br /> Tusker:19pts<br /> Thika United:14pts<br /> Western Stima:14pts<br />Muhoroni:14pts”);
}
if ($message ==“#4”){
$sessionState“”;
$msg=“kpl news<br /> 15-04-2012<br />Gor mahia gets banned for 3 matches by premier league,afc sign in congolese striker atwete”;
}
if ($message == “#5”){
$sessionState“”;
$msg=“Ongoing Live results <br />mathare o gormahia o,ulinzi 4 tusker 3”;
}
}
header('Content-type: text/xml');
header('Character-encod ing: utf-8');
$out = '<xml><mt id="123456"><msg>Hello World</msg><sessionstate>session1</sessionstate><customerstate>customer1</customerstates></mt></xml>';
echo $out;
?>
...