Skip to content

Instantly share code, notes, and snippets.

@fskale
Last active January 15, 2021 15:07
Show Gist options
  • Save fskale/61278fdd55ff31c6d659032efd19f68c to your computer and use it in GitHub Desktop.
Save fskale/61278fdd55ff31c6d659032efd19f68c to your computer and use it in GitHub Desktop.
Valid HWG-SMS-GW3 WSDL Definition File (Works for Firmware version 1.2.x !)
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:pos="poseidonService.xsd"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
targetNamespace="poseidonService.xsd"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns="http://schemas.xmlsoap.org/wsdl/">
<wsdl:documentation>
Service: poseidonService
Version: 1.0
Owner: Franz Skale
</wsdl:documentation>
<wsdl:types>
<xsd:schema targetNamespace="poseidonService.xsd"
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
>
<xsd:simpleType name="QueueType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="GsmOut"/>
<xsd:enumeration value="GsmIn"/>
<xsd:enumeration value="Rfid"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="CmdType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="SMS"/>
<xsd:enumeration value="Call"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="RfidType">
<xsd:sequence>
<xsd:element name="Card" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Time" type="xsd:int" minOccurs="0" maxOccurs="1"/>
<xsd:element name="ID" type="xsd:int" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="IdSetType">
<xsd:sequence>
<xsd:element name="ID" type="xsd:int" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="QueueAdd">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Queue" type="pos:QueueType"/>
<xsd:element name="Gsm">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Cmd" type="pos:CmdType"/>
<xsd:element name="Nmr" type="xsd:string"/>
<xsd:element name="Text" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="QueueAddResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Rslt" type="xsd:int" minOccurs="0" maxOccurs="1"/>
<xsd:element name="ID" type="xsd:int" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="QueuePick">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Queue" type="pos:QueueType" minOccurs="0" maxOccurs="1"/>
<xsd:element name="ID" type="xsd:int" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="QueuePickResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Rslt" type="xsd:int" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Gsm">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Cmd" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="ID" type="xsd:int" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Nmr" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Text" type="xsd:string" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="QueueStatus">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Queue" type="pos:QueueType" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="QueueStatusResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Rslt" type="xsd:int" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Max" type="xsd:int" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Cnt" type="xsd:int" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Missed" type="xsd:int" minOccurs="0" maxOccurs="1"/>
<xsd:element name="IdSet" type="pos:IdSetType" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="RecordStatus">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Queue" type="pos:QueueType" minOccurs="0" maxOccurs="1"/>
<xsd:element name="ID" type="xsd:int" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="RecordStatusResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Rslt" type="xsd:int" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Retry" type="xsd:int" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="RecordDelete">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Queue" type="pos:QueueType" minOccurs="0" maxOccurs="1"/>
<xsd:element name="ID" type="xsd:int" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Rslt" type="xsd:int" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="NotificationEvent">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Queue" type="pos:QueueType" minOccurs="0" maxOccurs="1"/>
<xsd:element name="DeviceName" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="MAC" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="Gsm" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="Rfid" type="pos:RfidType" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="NotificationEventResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Rslt" type="xsd:int" minOccurs="0" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</wsdl:types>
<wsdl:portType name="hwgModemType">
<wsdl:documentation>HWG SMS Gateway WSDL</wsdl:documentation>
<wsdl:operation name="QueueAdd">
<wsdl:input message="pos:QueueAddRequest"/>
<wsdl:output message="pos:QueueAddResponse"/>
</wsdl:operation>
<wsdl:operation name="QueuePick">
<wsdl:input message="pos:QueuePickRequest"/>
<wsdl:output message="pos:QueuePickResponse"/>
</wsdl:operation>
<wsdl:operation name="QueueStatus">
<wsdl:input message="pos:QueueStatusRequest"/>
<wsdl:output message="pos:QueueStatusResponse"/>
</wsdl:operation>
<wsdl:operation name="RecordStatus">
<wsdl:input message="pos:RecordStatusRequest"/>
<wsdl:output message="pos:RecordStatusResponse"/>
</wsdl:operation>
<wsdl:operation name="RecordDelete">
<wsdl:input message="pos:RecordDeleteRequest"/>
<wsdl:output message="pos:RecordDeleteResponse"/>
</wsdl:operation>
<wsdl:operation name="NotificationEvent">
<wsdl:input message="pos:NotificationEventRequest"/>
<wsdl:output message="pos:NotificationEventResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:message name="QueueAddRequest">
<wsdl:part name="request" element="pos:QueueAdd"/>
</wsdl:message>
<wsdl:message name="QueueAddResponse">
<wsdl:part name="response" element="pos:QueueAddResponse"/>
</wsdl:message>
<wsdl:message name="QueuePickRequest">
<wsdl:part name="request" element="pos:QueuePick"/>
</wsdl:message>
<wsdl:message name="QueuePickResponse">
<wsdl:part name="response" element="pos:QueuePickResponse"/>
</wsdl:message>
<wsdl:message name="QueueStatusRequest">
<wsdl:part name="request" element="pos:QueueStatus"/>
</wsdl:message>
<wsdl:message name="QueueStatusResponse">
<wsdl:part name="response" element="pos:QueueStatusResponse"/>
</wsdl:message>
<wsdl:message name="RecordStatusRequest">
<wsdl:part name="request" element="pos:RecordStatus"/>
</wsdl:message>
<wsdl:message name="RecordStatusResponse">
<wsdl:part name="response" element="pos:RecordStatusResponse"/>
</wsdl:message>
<wsdl:message name="RecordDeleteRequest">
<wsdl:part name="request" element="pos:RecordDelete"/>
</wsdl:message>
<wsdl:message name="RecordDeleteResponse">
<wsdl:part name="response" element="pos:RecordDelete"/>
</wsdl:message>
<wsdl:message name="NotificationEventRequest">
<wsdl:part name="request" element="pos:NotificationEvent"/>
</wsdl:message>
<wsdl:message name="NotificationEventResponse">
<wsdl:part name="response" element="pos:NotificationEventResponse"/>
</wsdl:message>
<wsdl:binding name="hwgBinding" type="pos:hwgModemType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="QueueAdd">
<soap:operation soapAction="#QueueAdd"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QueuePick">
<soap:operation soapAction="#QueuePick"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QueueStatus">
<soap:operation soapAction="#QueueStatus"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="RecordStatus">
<soap:operation soapAction="#RecordStatus"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="RecordDelete">
<soap:operation soapAction="#RecordDelete"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="NotificationEvent">
<soap:operation soapAction="#NotificationEvent"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="sms">
<wsdl:port name="smsPort" binding="pos:hwgBinding">
<soap:address location="http://192.168.2.22/service.xml"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment