dilame / instagram-private-api

NodeJS Instagram private API SDK. Written in TypeScript.
MIT License
5.99k stars 1.14k forks source link

Login issue on new sessions #728

Closed generictitle closed 5 years ago

generictitle commented 5 years ago

Issue started in the last day, see issue here for detailed explanation

https://github.com/mgp25/Instagram-API/issues/2633

they fixed it on that repo with this commit

https://github.com/mgp25/Instagram-API/commit/e79acc05cd9d690f663a68da2b6a1549d3df29e7

dilame commented 5 years ago

We already have such https://github.com/dilame/instagram-private-api/blob/master/src/repositories/launcher.repository.ts It's a bit different, but exists. Do you have problems with our lib?

block-kitty commented 5 years ago

@dilame I too have noticed the lib stopped working sometime over the past 24hours. Client.Session.create is returning an undefined session even when the details provided are correct.

The Instagram app is not asking for any login verification either so no checkpoint is being triggered.

alexgiul commented 5 years ago

@liam-mulv are you using previous version or newer? I have just checked that with newer version it is possible to login instead on previous version (0.7.x) adding the same "configs" I got a SentryBlockError

@dilame I know this is the old library but I dont understand if I am missing something betweenthe new one and the old one; this is the code I have updated on old one: `Internal.launcherSync = function (session, preLogin) {

let configs = '';
console.log("launcherSync " + preLogin);
if(preLogin)
    configs = 'ig_fbns_blocked,ig_android_felix_release_players,ig_user_mismatch_soft_error,ig_android_carrier_signals_killswitch,ig_android_killswitch_perm_direct_ssim,fizz_ig_android,ig_mi_block_expired_events,ig_android_os_version_blocking_config';
else
    configs = 'ig_android_insights_welcome_dialog_tooltip,ig_android_extra_native_debugging_info,ig_android_insights_top_account_dialog_tooltip,ig_android_explore_startup_prefetch_launcher,ig_android_newsfeed_recyclerview,ig_android_react_native_ota_kill_switch,ig_qe_value_consistency_checker,ig_android_qp_keep_promotion_during_cooldown,ig_launcher_ig_explore_post_chaining_hide_comments_android_v0,ig_android_video_playback,ig_launcher_ig_android_network_stack_queue_undefined_request_qe,ig_camera_android_attributed_effects_endpoint_api_query_config,ig_android_notification_setting_sync,ig_android_dogfooding,ig_launcher_ig_explore_post_chaining_pill_android_v0,ig_android_request_compression_launcher,ig_delink_lasso_accounts,ig_android_stories_send_preloaded_reels_with_reels_tray,ig_android_critical_path_manager,ig_android_shopping_django_product_search,ig_android_qp_surveys_v1,ig_android_feed_attach_report_logs,ig_android_uri_parser_cache_launcher,ig_android_global_scheduler_infra,ig_android_explore_grid_viewpoint,ig_android_global_scheduler_direct,ig_android_upload_heap_on_oom,ig_launcher_ig_android_network_stack_cap_api_request_qe,ig_android_async_view_model_launcher,ig_android_bug_report_screen_record,ig_canvas_ad_pixel,ig_android_bloks_demos,ig_launcher_force_switch_on_dialog,ig_story_insights_entry,ig_android_executor_limit_per_group_config,ig_android_bitmap_strong_ref_cache_layer_launcher,ig_android_cold_start_class_preloading,ig_direct_e2e_send_waterfall_sample_rate_config,ig_android_qp_waterfall_logging,ig_synchronous_account_switch,ig_launcher_ig_android_reactnative_realtime_ota,ig_contact_invites_netego_killswitch,ig_launcher_ig_explore_video_chaining_container_module_android,ig_launcher_ig_explore_remove_topic_channel_tooltip_experiment_android,ig_android_request_cap_tuning_with_bandwidth,ig_android_rageshake_redesign,ig_launcher_explore_navigation_redesign_android,ig_android_betamap_cold_start,ig_android_employee_options,ig_android_direct_gifs_killswitch,ig_android_gps_improvements_launcher,ig_launcher_ig_android_network_stack_cap_video_request_qe,ig_launcher_ig_android_network_request_cap_tuning_qe,ig_android_qp_xshare_to_fb,ig_android_feed_report_ranking_issue,ig_launcher_ig_explore_verified_badge_android,ig_android_bloks_data_release,ig_android_feed_camera_latency';

var req = new Request(session)
    .setMethod('POST')
    .setResource('launcherSync')
    .setHeaders({
        'X-DEVICE-ID': session.uuid
    })
    .setBodyType('form')
    .setData({
        configs: configs
    })

if(!preLogin) {
    return session.getAccountId()
        .then(function(id) {
            return req.setData({
                id: id,
                _uuid: session.uuid,
                _uid: id
            })
            .signPayload()
            .send()
        });
}

else {
    return req.setData({id: session.uuid}).signPayload().send();
}

}`

I am reworking all of my app to use the new version but I have to solve also the problem and restart asap the bot. Can you give me any advice?

block-kitty commented 5 years ago

@alexgiul Seems I have not stayed up to date with the lib. My app is currently using vs (0.7.x), seems the new release is hugely different. Let me know if you are able to resolve this issue, I too will need to patch this before working on a rewrite.

alexgiul commented 5 years ago

@liam-mulv same thing as me

generictitle commented 5 years ago

I'm using the upload video functionality and cant upgrade to v1 yet, so need an interim solution until I or someone else figures out how to do video in v1, appreciate any help getting the old version working

generictitle commented 5 years ago

Fixed this on my local by swapping the empty configs string with this:

.setData({
    configs: 'ig_android_felix_release_players,ig_user_mismatch_soft_error,ig_android_os_version_blocking_config,ig_android_carrier_signals_killswitch,fizz_ig_android,ig_mi_block_expired_events,ig_android_killswitch_perm_direct_ssim,ig_fbns_blocked'
})

Cheers

alexgiul commented 5 years ago

@generictitle how do you have changed also the login part? Because the old library stops working giving "No configs given". If you havent experienced it, just remove the session cookie.

Does Anyone know what is the meaning of this "configs"?

ishanka25 commented 5 years ago

i have faced the same issue today. was working fine. now it's giving Error: No configs given. using V0.8.15 :(

SashaDesigN commented 5 years ago

@generictitle Hi, where exactly in code did you changed that setConfig string?)

generictitle commented 5 years ago

@SashaDesigN /src/v1/internal - in the launcherSync function there's this:

const req = new Request(session)
  .setMethod('POST')
  .setResource('launcherSync')
  .setHeaders({
    'X-DEVICE-ID': session.uuid,
  })
  .setBodyType('form')
  .setData({
    configs: 'ig_android_felix_release_players',
  });

Yours may vary depending on version, but edit the string "ig_android_felix_release_players" and swap with the one I gave, or it may be an empty string, either way you should end up with:

.setData({ configs: 'ig_android_felix_release_players,ig_user_mismatch_soft_error,ig_android_os_version_blocking_config,ig_android_carrier_signals_killswitch,fizz_ig_android,ig_mi_block_expired_events,ig_android_killswitch_perm_direct_ssim,ig_fbns_blocked' })

SashaDesigN commented 5 years ago

@generictitle thanks it works)

realinstadude commented 5 years ago

Looks like we don't have any problems with this at the current moment. Feel free to tell me if I wrong and we will reopen this.