public bool GetMemberOnlyInfo(string iLiveID) { Nico nico = Nico.Instance; mIsMemberOnly = nico.IsMemberOnly(iLiveID); return(mIsMemberOnly); }
//------------------------------------------------------------------------- // 情報取得 //------------------------------------------------------------------------- public InfoErr GetInfo(string iLiveID) { Nico nico = Nico.Instance; Dictionary <string, string> info_PublishStatus = nico.GetPublishStatus(iLiveID); Dictionary <string, string> info_PlayerStatus = nico.GetPlayerStatus(iLiveID); Utils.WriteLog("GetInfo()"); if (info_PlayerStatus != null) { // コミュ番号取得 if (info_PlayerStatus.ContainsKey("room_label")) { RoomLabel = info_PlayerStatus["room_label"]; } if (info_PlayerStatus.ContainsKey("title")) { Title = info_PlayerStatus["title"]; } // 来場者数 if (info_PlayerStatus.ContainsKey("watch_count")) { WatchCount = uint.Parse(info_PlayerStatus["watch_count"].ToString()); } } if (info_PublishStatus != null && info_PublishStatus.ContainsKey("code") && info_PublishStatus["code"].Equals("permission_denied")) { return(InfoErr.ERR_NO_ERR); } if (info_PublishStatus != null) { // 来場者数 // if (info.ContainsKey("watch_count")) // { // WatchCount = uint.Parse(info["watch_count"].ToString()); // } if (!info_PublishStatus.ContainsKey("token")) { return(InfoErr.ERR_NOT_LOGIN); } // 時間 if (info_PublishStatus.ContainsKey("time") && info_PublishStatus.ContainsKey("start_time") && info_PublishStatus.ContainsKey("base_time")) { Time = Convert.ToUInt32(info_PublishStatus["time"]); BaseTime = Convert.ToUInt32(info_PublishStatus["base_time"]); StartTime = Convert.ToUInt32(info_PublishStatus["start_time"]); EndTime = Convert.ToUInt32(info_PublishStatus["end_time"]); UnixTime = Utils.GetUnixTime(DateTime.Now); } // ニックネーム if (info_PublishStatus.ContainsKey("nickname")) { Nickname = info_PublishStatus["nickname"]; } // トークン if (info_PublishStatus.ContainsKey("token")) { Token = info_PublishStatus["token"]; } } InfoErr err = (info_PublishStatus != null) ? InfoErr.ERR_NO_ERR : InfoErr.ERR_COULD_NOT_GET; info_PublishStatus = null; info_PlayerStatus = null; return(err); }
//------------------------------------------------------------------------- // 外部エンコーダー起動 //------------------------------------------------------------------------- public static void Exec(string LiveID) { Thread th = new Thread(delegate() { // NLE if (Properties.Settings.Default.use_nle) { if (NLE.IsAlive) { NLE.Start(); using (Bouyomi bm = new Bouyomi()) { bm.Talk("えぬえるいー配信を開始します。"); } } else { using (Bouyomi bm = new Bouyomi()) { bm.Talk("えぬえるいー配信なんてなかった。"); } } return; } // XSplit if (Properties.Settings.Default.use_xsplit) { XSplit.Start(); using (Bouyomi bm = new Bouyomi()) { bm.Talk("エックスプリット配信を開始します。"); } return; } // FME if (Properties.Settings.Default.use_fme) { string path = Properties.Settings.Default.fmle_profile_path + "\\" + Properties.Settings.Default.fmle_default_profile;; if (!File.Exists(path) && !Properties.Settings.Default.use_xsplit && !Properties.Settings.Default.use_nle) { using (Bouyomi bm = new Bouyomi()) { bm.Talk("えふえむいープロファイルが見つかりませんでした"); } return; } Nico nico = Nico.Instance; string fmle_profile_path = Properties.Settings.Default.fmle_profile_path + "\\" + Properties.Settings.Default.fmle_default_profile; string lv = LiveID; if (lv.Length > 2) { Dictionary <string, string> fme_profiles = nico.GetFMEProfile(lv); if (fme_profiles == null) { return; } if (fme_profiles.Count <= 1) { return; } if (fme_profiles["status"].Equals("ok")) { FMLE.Start(fme_profiles, fmle_profile_path); } } } }); th.Name = "NivoLive.HQ.Exec(): FME"; th.Start(); }