<?xml version="1.0"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/BombshellChatServiceStack.Routes" xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/BombshellChatServiceStack.Routes" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <xs:import namespace="http://schemas.servicestack.net/types" />
  <xs:import namespace="http://schemas.datacontract.org/2004/07/BombshellChatServiceStack.ThirdParty" />
  <xs:import namespace="http://schemas.datacontract.org/2004/07/BombshellChatServiceStack" />
  <xs:complexType name="PostAgentDevice">
    <xs:sequence>
      <xs:element minOccurs="0" name="ClientAgentId" type="xs:int" />
      <xs:element minOccurs="0" name="ClientId" type="ser:guid" />
      <xs:element minOccurs="0" name="DeviceId" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="IsIOS" type="xs:boolean" />
      <xs:element minOccurs="0" name="SourceClient" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PostAgentDevice" nillable="true" type="tns:PostAgentDevice" />
  <xs:complexType name="DeleteAgentDevice">
    <xs:sequence>
      <xs:element minOccurs="0" name="DeviceId" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="DeleteAgentDevice" nillable="true" type="tns:DeleteAgentDevice" />
  <xs:complexType name="VerifyAgentWebsiteAddress">
    <xs:sequence>
      <xs:element minOccurs="0" name="Address" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="VerifyAgentWebsiteAddress" nillable="true" type="tns:VerifyAgentWebsiteAddress" />
  <xs:complexType name="GetAgentWebsites">
    <xs:sequence>
      <xs:element minOccurs="0" name="AgentId" type="ser:guid" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="GetAgentWebsites" nillable="true" type="tns:GetAgentWebsites" />
  <xs:complexType name="PostAgentWebsite">
    <xs:sequence>
      <xs:element minOccurs="0" name="AgentId" type="ser:guid" />
      <xs:element minOccurs="0" name="FullAddress" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Latitude" type="xs:double" />
      <xs:element minOccurs="0" name="Longitude" type="xs:double" />
      <xs:element minOccurs="0" name="MaxContactDistance" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="WebsiteId" type="ser:guid" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PostAgentWebsite" nillable="true" type="tns:PostAgentWebsite" />
  <xs:complexType name="PutAgentWebsite">
    <xs:sequence>
      <xs:element minOccurs="0" name="AgentId" type="ser:guid" />
      <xs:element minOccurs="0" name="FullAddress" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Latitude" type="xs:double" />
      <xs:element minOccurs="0" name="Longitude" type="xs:double" />
      <xs:element minOccurs="0" name="MaxContactDistance" nillable="true" type="xs:int" />
      <xs:element minOccurs="0" name="WebsiteId" type="ser:guid" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PutAgentWebsite" nillable="true" type="tns:PutAgentWebsite" />
  <xs:complexType name="PatchAgentWebsite">
    <xs:sequence>
      <xs:element minOccurs="0" name="AgentId" type="ser:guid" />
      <xs:element minOccurs="0" name="IsActive" type="xs:boolean" />
      <xs:element minOccurs="0" name="WebsiteId" type="ser:guid" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PatchAgentWebsite" nillable="true" type="tns:PatchAgentWebsite" />
  <xs:complexType name="DeleteAgentWebsite">
    <xs:sequence>
      <xs:element minOccurs="0" name="AgentId" type="ser:guid" />
      <xs:element minOccurs="0" name="WebsiteId" type="ser:guid" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="DeleteAgentWebsite" nillable="true" type="tns:DeleteAgentWebsite" />
  <xs:complexType name="PutConversation">
    <xs:sequence>
      <xs:element minOccurs="0" name="ClientAgentId" type="xs:int" />
      <xs:element minOccurs="0" name="ClientId" type="ser:guid" />
      <xs:element minOccurs="0" name="ContactId" type="ser:guid" />
      <xs:element minOccurs="0" name="ConversationId" type="ser:guid" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PutConversation" nillable="true" type="tns:PutConversation" />
  <xs:complexType name="GetClient">
    <xs:sequence>
      <xs:element minOccurs="0" name="ClientID" nillable="true" type="ser:guid" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="GetClient" nillable="true" type="tns:GetClient" />
  <xs:complexType name="PutClient">
    <xs:sequence>
      <xs:element minOccurs="0" name="AfterHoursMessage" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AgentNotificationBody" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AgentNotificationTitle" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="BackupAgentId" type="ser:guid" />
      <xs:element minOccurs="0" name="ClaimConversationErrorMessage" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ClaimConversationErrorTitle" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ClaimConversationSuccessMessage" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ClaimConversationSuccessTitle" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ClientId" type="ser:guid" />
      <xs:element minOccurs="0" name="ClientName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ClosingTime" type="ser:duration" />
      <xs:element minOccurs="0" name="ContactInfoFormErrorMessage" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ContactInfoFormIntroMessage" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="DefaultAgentInitialMessage" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="DefaultConversationPhotoURL" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="DefaultMaxContactDistance" type="xs:int" />
      <xs:element minOccurs="0" name="MatchingWithAgentMessage" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="MaxAgentResponseTime" type="ser:duration" />
      <xs:element minOccurs="0" name="NoAgentsAvailableMessage" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="OpeningTime" type="ser:duration" />
      <xs:element minOccurs="0" name="TimeZone" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PutClient" nillable="true" type="tns:PutClient" />
  <xs:complexType name="GetAgent">
    <xs:sequence>
      <xs:element minOccurs="0" name="ClientAgentId" type="xs:int" />
      <xs:element minOccurs="0" name="ClientId" type="ser:guid" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="GetAgent" nillable="true" type="tns:GetAgent" />
  <xs:complexType name="PostAgent">
    <xs:sequence>
      <xs:element minOccurs="0" name="ApiKey" nillable="true" type="ser:guid" />
      <xs:element minOccurs="0" name="ClientAgentId" type="xs:int" />
      <xs:element minOccurs="0" name="ClientId" type="ser:guid" />
      <xs:element minOccurs="0" name="Email" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FullName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="InitialMessage" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PostAgent" nillable="true" type="tns:PostAgent" />
  <xs:complexType name="PutAgent">
    <xs:sequence>
      <xs:element minOccurs="0" name="AgentId" type="ser:guid" />
      <xs:element minOccurs="0" name="Email" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FullName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="InitialMessage" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="IsAcceptingChats" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PutAgent" nillable="true" type="tns:PutAgent" />
  <xs:complexType name="PatchAgent">
    <xs:sequence>
      <xs:element minOccurs="0" name="AgentId" type="ser:guid" />
      <xs:element minOccurs="0" name="InitialMessage" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="IsAcceptingChats" nillable="true" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PatchAgent" nillable="true" type="tns:PatchAgent" />
  <xs:complexType name="GetContact">
    <xs:sequence>
      <xs:element minOccurs="0" name="ContactId" type="ser:guid" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="GetContact" nillable="true" type="tns:GetContact" />
  <xs:complexType name="PostContact">
    <xs:sequence>
      <xs:element minOccurs="0" name="ContactId" type="ser:guid" />
      <xs:element minOccurs="0" name="ConversationId" type="ser:guid" />
      <xs:element minOccurs="0" name="Email" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FullName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Latitude" nillable="true" type="xs:double" />
      <xs:element minOccurs="0" name="Longitude" nillable="true" type="xs:double" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PostContact" nillable="true" type="tns:PostContact" />
  <xs:complexType name="PutContact">
    <xs:sequence>
      <xs:element minOccurs="0" name="ContactId" type="ser:guid" />
      <xs:element minOccurs="0" name="ConversationId" type="ser:guid" />
      <xs:element minOccurs="0" name="Email" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FullName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Latitude" nillable="true" type="xs:double" />
      <xs:element minOccurs="0" name="Longitude" nillable="true" type="xs:double" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PutContact" nillable="true" type="tns:PutContact" />
  <xs:complexType name="PostAgentDeviceResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q1="http://schemas.servicestack.net/types" type="q1:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PostAgentDeviceResponse" nillable="true" type="tns:PostAgentDeviceResponse" />
  <xs:complexType name="DeleteAgentDeviceResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q2="http://schemas.servicestack.net/types" type="q2:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="DeleteAgentDeviceResponse" nillable="true" type="tns:DeleteAgentDeviceResponse" />
  <xs:complexType name="VerifyAgentWebsiteAddressResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q3="http://schemas.servicestack.net/types" type="q3:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" nillable="true" xmlns:q4="http://schemas.datacontract.org/2004/07/BombshellChatServiceStack.ThirdParty" type="q4:GoogleGeocoding.GeocodingResult" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="VerifyAgentWebsiteAddressResponse" nillable="true" type="tns:VerifyAgentWebsiteAddressResponse" />
  <xs:complexType name="GetAgentWebsitesResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q5="http://schemas.servicestack.net/types" type="q5:ResponseStatus" />
      <xs:element minOccurs="0" name="Results" nillable="true" xmlns:q6="http://schemas.datacontract.org/2004/07/BombshellChatServiceStack" type="q6:ArrayOfAgentWebsite_SelectManyForAgent_Result" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="GetAgentWebsitesResponse" nillable="true" type="tns:GetAgentWebsitesResponse" />
  <xs:complexType name="PostAgentWebsiteResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q7="http://schemas.servicestack.net/types" type="q7:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PostAgentWebsiteResponse" nillable="true" type="tns:PostAgentWebsiteResponse" />
  <xs:complexType name="PutAgentWebsiteResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q8="http://schemas.servicestack.net/types" type="q8:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PutAgentWebsiteResponse" nillable="true" type="tns:PutAgentWebsiteResponse" />
  <xs:complexType name="PatchAgentWebsiteResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q9="http://schemas.servicestack.net/types" type="q9:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PatchAgentWebsiteResponse" nillable="true" type="tns:PatchAgentWebsiteResponse" />
  <xs:complexType name="DeleteAgentWebsiteResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q10="http://schemas.servicestack.net/types" type="q10:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="DeleteAgentWebsiteResponse" nillable="true" type="tns:DeleteAgentWebsiteResponse" />
  <xs:complexType name="PutConversationResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q11="http://schemas.servicestack.net/types" type="q11:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PutConversationResponse" nillable="true" type="tns:PutConversationResponse" />
  <xs:complexType name="GetClientResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q12="http://schemas.servicestack.net/types" type="q12:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" nillable="true" xmlns:q13="http://schemas.datacontract.org/2004/07/BombshellChatServiceStack" type="q13:Client_SelectSingle_Result" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="GetClientResponse" nillable="true" type="tns:GetClientResponse" />
  <xs:complexType name="PutClientResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q14="http://schemas.servicestack.net/types" type="q14:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PutClientResponse" nillable="true" type="tns:PutClientResponse" />
  <xs:complexType name="GetAgentResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="AppId" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q15="http://schemas.servicestack.net/types" type="q15:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" nillable="true" xmlns:q16="http://schemas.datacontract.org/2004/07/BombshellChatServiceStack" type="q16:Agent_SelectSingle_Result" />
      <xs:element minOccurs="0" name="Signature" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="GetAgentResponse" nillable="true" type="tns:GetAgentResponse" />
  <xs:complexType name="PostAgentResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q17="http://schemas.servicestack.net/types" type="q17:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PostAgentResponse" nillable="true" type="tns:PostAgentResponse" />
  <xs:complexType name="PutAgentResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q18="http://schemas.servicestack.net/types" type="q18:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PutAgentResponse" nillable="true" type="tns:PutAgentResponse" />
  <xs:complexType name="PatchAgentResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q19="http://schemas.servicestack.net/types" type="q19:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PatchAgentResponse" nillable="true" type="tns:PatchAgentResponse" />
  <xs:complexType name="GetContactResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="AppId" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ContactId" nillable="true" type="ser:guid" />
      <xs:element minOccurs="0" name="ContactInfoFormErrorMessage" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ContactInfoFormIntroMessage" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="DefaultConversationPhotoURL" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Email" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FullName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="LauncherThemeColor" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q20="http://schemas.servicestack.net/types" type="q20:ResponseStatus" />
      <xs:element minOccurs="0" name="Signature" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="WebsiteName" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="GetContactResponse" nillable="true" type="tns:GetContactResponse" />
  <xs:complexType name="PostContactResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q21="http://schemas.servicestack.net/types" type="q21:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PostContactResponse" nillable="true" type="tns:PostContactResponse" />
  <xs:complexType name="PutContactResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="ResponseStatus" nillable="true" xmlns:q22="http://schemas.servicestack.net/types" type="q22:ResponseStatus" />
      <xs:element minOccurs="0" name="Result" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PutContactResponse" nillable="true" type="tns:PutContactResponse" />
</xs:schema>