IEnumerator SearchForLiveBroadcast() { if (useLocalhost) { broadcastId = "localhost"; broadcastStatus = BroadcastStatus.Live; } else if (broadcastStatus != BroadcastStatus.Live || String.IsNullOrEmpty(broadcastId)) { yield return HandleAPIRequest<BroadcastsResponse>( APIHttpHost, broadcastsEndpointPath, "", AccessToken, (BroadcastsResponse r) => { if (r != null && r.broadcasts != null) { foreach (Broadcast broadcast in r.broadcasts) { if (broadcast.state == "running") { broadcastId = broadcast.id; broadcastStatus = BroadcastStatus.Live; break; } } } }, (APIResponse r) => { }); } }
IEnumerator CreateBroadcast() { yield return StartCoroutine(GetRegion()); Assert.IsTrue(!String.IsNullOrEmpty(region)); bool is360 = false; string payload = String.Format( @"{{""region"":""{0}"",""is_360"":{1}}}", region, is360 ? "true" : "false"); yield return HandleAPIRequest<BroadcastCreateResponse>( APIHttpHost, broadcastCreateEndpointPath, payload, AccessToken, (BroadcastCreateResponse r) => { if (r != null && r.broadcast != null && r.encoder != null) { broadcastId = r.broadcast.id; streamKey = r.encoder.stream_key; streamUrl = r.encoder.rtmp_url; broadcastStatus = BroadcastStatus.ReadyToStream; } }, (APIResponse r) => { }); }
public Broadcast(long identifier, string name, BroadcastStatus status, DateTime lastModified, BroadcastType type, BroadcastConfig item) { id = identifier; Name = name; Status = status; LastModified = lastModified; Type = type; Item = item; }
IEnumerator StopBroadcast() { Assert.IsTrue(!String.IsNullOrEmpty(broadcastId)); string payload = String.Format(@"{{""broadcast_id"":""{0}""}}", broadcastId); yield return HandleAPIRequest<EmptyResponse>( APIHttpHost, broadcastStopEndpointPath, payload, AccessToken, (EmptyResponse json) => { broadcastId = ""; broadcastStatus = BroadcastStatus.NotStarted; Disconnect(); }, (APIResponse r) => { }); }
public static ObervableOperation Create(IOperationMeta operation, BroadcastStatus status, string txHash, DateTime?updated = null) { return(new ObervableOperation { OperationId = operation.OperationId, AmountSatoshi = operation.AmountSatoshi, AssetId = operation.AssetId, FromAddress = operation.FromAddress, IncludeFee = operation.IncludeFee, ToAddress = operation.ToAddress, Status = status, TxHash = txHash, Updated = updated ?? DateTime.UtcNow, FeeSatoshi = operation.FeeSatoshi }); }
private BroadcastedTransactionState MapOperationState(BroadcastStatus status) { switch (status) { case BroadcastStatus.Completed: return(BroadcastedTransactionState.Completed); case BroadcastStatus.Failed: return(BroadcastedTransactionState.Failed); case BroadcastStatus.InProgress: return(BroadcastedTransactionState.InProgress); default: throw new InvalidCastException($"Unknown mapping from {status} "); } }
public static ObervableOperation Create(IOperationMeta operation, BroadcastStatus status, string txHash, int updatedAtBlockHeight, DateTime?updated = null) { return(new ObervableOperation { OperationId = operation.OperationId, Inputs = operation.Inputs.ToArray(), AssetId = operation.AssetId, Outputs = operation.Outputs.ToArray(), IncludeFee = operation.IncludeFee, Status = status, TxHash = txHash, Updated = updated ?? DateTime.UtcNow, FeeSatoshi = operation.FeeSatoshi, UpdatedAtBlockHeight = updatedAtBlockHeight, }); }
public static ObervableOperation Create(OperationAggregate operation, BroadcastStatus status, string txHash, int updatedAtBlockHeight, DateTime?updated = null) { return(new ObervableOperation { OperationId = operation.OperationId, Amount = operation.Amount, AssetId = operation.AssetId, FromAddress = operation.FromAddress, IncludeFee = operation.IncludeFee, ToAddress = operation.ToAddress, Status = status, TxHash = txHash, Updated = updated ?? DateTime.UtcNow, Fee = operation.Fee, UpdatedAtBlockHeight = updatedAtBlockHeight }); }
IEnumerator PublishBroadcast(string title, bool shouldNotTweet) { Assert.IsTrue(!String.IsNullOrEmpty(broadcastId)); string payload = String.Format( @"{{""broadcast_id"":""{0}"",""title"":""{1}"",""should_not_tweet"":{2}}}", broadcastId, title, shouldNotTweet ? "true" : "false"); yield return HandleAPIRequest<BroadcastPublishResponse>( APIHttpHost, broadcastPublishEndpointPath, payload, AccessToken, (BroadcastPublishResponse r) => { Assert.IsTrue(broadcastId.Equals(r.broadcast.id)); broadcastStatus = BroadcastStatus.Live; }, (APIResponse r) => { }); }