Imports System.Net
Imports System.Text
Imports System.IO
Imports Newtonsoft.Json
Module Score
Private Function SendScoreReq(ByVal jsonString As String)
Dim request As HttpWebRequest = _
WebRequest.Create _
("https://api.betfair.com/exchange/scores/json-rpc/v1")
Dim byteArray As Byte() = Encoding.UTF8.GetBytes(jsonString)
Dim responseFromServer As String = ""
Try
request.Method = "POST"
request.ContentType = "application/json"
request.ContentLength = byteArray.Length
request.Headers.Add("X-Application: gbFh7fGQUEWATIAG")
request.Headers.Add("X-Authentication: ysbZQhrft42AG9fSfK6uwNnEd8rZFFKYSQRP7OOraSU=")
request.AutomaticDecompression = _
DecompressionMethods.GZip Or DecompressionMethods.Deflate
request.ServicePoint.Expect100Continue = False
request.Timeout = 2000
Dim dataStream As Stream = request.GetRequestStream()
dataStream.Write(byteArray, 0, byteArray.Length)
Dim response As WebResponse = request.GetResponse()
dataStream = response.GetResponseStream()
Dim reader As New StreamReader(dataStream)
responseFromServer = reader.ReadToEnd()
msgbox(responseFromServer)
reader.Dispose()
dataStream.Dispose()
response.Dispose()
Catch ex As WebException 'Exception
End Try
Return responseFromServer
End Function
Public Class listScoresRequest
Public jsonrpc As String = "2.0"
Public method As String = "ScoresAPING/v1.0/listScores"
Public params As Params
Public id As Integer = 1
End Class
Public Class Params
Public Property updateKeys() As Updatekey
End Class
Public Class Updatekey
Public Property eventId As String
End Class
Function SerializeListScoresRequest(ByVal requestList As _
List(Of listScoresRequest))
Dim temp As String = JsonConvert.SerializeObject(requestList)
MsgBox.Print(temp)
Return temp
Return JsonConvert.SerializeObject(requestList)
End Function
Public Class UpdateContext
Public eventTime As String
Public lastUpdated As DateTime
Public updateSequence As Integer
Public updateType As String
End Class
Public Class Values
Public player2PointsWon As String
Public player1 As String
Public player2 As String
Public player1SetScores As String
Public player2GamesWon As String
Public player1GamesWon As String
Public player1SetsWon As String
Public player2SetsWon As String
Public player2SetScores As String
Public isLive As String
Public player1PointsWon As String
Public eventTypeStatus As String
Public startDate As DateTime
End Class
Public Class Result
Public eventId As String
Public eventTypeId As String
Public updateContext As UpdateContext
Public values As Values
Public eventStatus As String
Public responseCode As String
End Class
Public Class listScoresResponse
Public jsonrpc As String
Public result As Result()
Public id As Integer
End Class
Function DeserializeListScoresResponse(ByVal jsonResponse As String)
Return JsonConvert.DeserializeObject(Of _
listScoresResponse())(SendScoreReq(jsonResponse))
End Function
End Module