Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Test.ServiceModel
Namespace Global
Namespace Test.ServiceModel
'''<Summary>
'''Convert speech to text
'''</Summary>
<Api(Description:="Convert speech to text")>
Public Partial Class SpeechToText
Implements IGeneration
'''<Summary>
'''The audio stream containing the speech to be transcribed
'''</Summary>
<ApiMember(Description:="The audio stream containing the speech to be transcribed")>
<Required>
Public Overridable Property Audio As String
'''<Summary>
'''Optional client-provided identifier for the request
'''</Summary>
<ApiMember(Description:="Optional client-provided identifier for the request")>
Public Overridable Property RefId As String Implements IGeneration.RefId
'''<Summary>
'''Tag to identify the request
'''</Summary>
<ApiMember(Description:="Tag to identify the request")>
Public Overridable Property Tag As String Implements IGeneration.Tag
End Class
'''<Summary>
'''Response object for text generation requests
'''</Summary>
<Api(Description:="Response object for text generation requests")>
Public Partial Class TextGenerationResponse
'''<Summary>
'''List of generated text outputs
'''</Summary>
<ApiMember(Description:="List of generated text outputs")>
Public Overridable Property Results As List(Of TextOutput)
'''<Summary>
'''Detailed response status information
'''</Summary>
<ApiMember(Description:="Detailed response status information")>
Public Overridable Property ResponseStatus As ResponseStatus
End Class
'''<Summary>
'''Output object for generated text
'''</Summary>
Public Partial Class TextOutput
'''<Summary>
'''The generated text
'''</Summary>
<ApiMember(Description:="The generated text")>
Public Overridable Property Text As String
End Class
End Namespace
End Namespace
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /xml/reply/SpeechToText HTTP/1.1
Host: test.servicestack.net
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<SpeechToText xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Test.ServiceModel">
<Audio>String</Audio>
<RefId>String</RefId>
<Tag>String</Tag>
</SpeechToText>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <TextGenerationResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Test.ServiceModel"> <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types"> <d2p1:ErrorCode>String</d2p1:ErrorCode> <d2p1:Message>String</d2p1:Message> <d2p1:StackTrace>String</d2p1:StackTrace> <d2p1:Errors> <d2p1:ResponseError> <d2p1:ErrorCode>String</d2p1:ErrorCode> <d2p1:FieldName>String</d2p1:FieldName> <d2p1:Message>String</d2p1:Message> <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d5p1:KeyValueOfstringstring> <d5p1:Key>String</d5p1:Key> <d5p1:Value>String</d5p1:Value> </d5p1:KeyValueOfstringstring> </d2p1:Meta> </d2p1:ResponseError> </d2p1:Errors> <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d3p1:KeyValueOfstringstring> <d3p1:Key>String</d3p1:Key> <d3p1:Value>String</d3p1:Value> </d3p1:KeyValueOfstringstring> </d2p1:Meta> </ResponseStatus> <Results> <TextOutput> <Text>String</Text> </TextOutput> </Results> </TextGenerationResponse>