Pronote ent ile de france

Bonjour @Thibaut_T j’étais dans les premiers utilisateurs l’année dernière pour tester ton plugin qui fonctionnait bien avec le college.

Ma fille étant passé dans un autre univers (Lycée) je viens d’avoir les identifiants de mademoiselle.

Par contre lors de la saisie de la configuration j’ai des 404

L’url du site est https://ent.iledefrance.fr/ et quand je choisi l’application Pronote je suis bien redirigé en SSO sur le site : Authentication

Le AZWxxxxxxCjyATp est un token qui change à chaque refresh.

Dans la configuration j’ai renseigné :
Mode de connexion : ENT « Ile de France »
Nom d’utilisateur : prenom.nom (identifiant utilisé sur le site https://ent.iledefrance.fr/ qui permet le sso vers le pronote)
Mots de passe : mot de passe de la page https://ent.iledefrance.fr/
Url de la page pronote : Authentication
Type de Comptes : Eleve

Mais j’ai en boucle :

[2020-09-09 18:55:08][ERROR] : Request failed with status code 404
[.....
[2020-09-09 18:55:12][ERROR] : Request failed with status code 404
[2020-09-09 18:55:12][ERROR] : Request failed with status code 404

Comme je vois que sur la doc, tu es aussi sur cette même académie, je suis certain que cela fonctionne, mais ou une subtilité ou une coquille de mon coté.

Merci par avance

Hello,

Sa serait possible d’avoir les log de pronotelink_node ?

Cdt
Thibaut

Désolé de ne répondre que quelques jours après ton retour.

Ci-dessous, le log node :

[Symbol(kBytesRead)]: 0,
[Symbol(kBytesWritten)]: 0,
[Symbol(connect-options)]: [Object]
},
_header: 'GET /timeline/timeline/ HTTP/1.1
' +
'Accept: application/json, text/plain, */*
' +
'User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:59.0) Gecko/20100101 Firefox/59.0
' +
'Content-Type:
' +
'Cookie: oneSessionId=2d6e5e78-44f5-47f3-a033-83049fbc579c:uR2V3HYMqMGzTV6vFokWtcL4E4E=; authenticated=true
' +
'Host: ent.iledefrance.fr
' +
'Connection: close
' +
'
',
_onPendingData: [Function: noopPendingOutput],
agent: Agent {
_events: [Object: null prototype],
_eventsCount: 2,
_maxListeners: undefined,
defaultPort: 443,
protocol: 'https:',
options: [Object],
requests: {},
sockets: [Object],
freeSockets: {},
keepAliveMsecs: 1000,
keepAlive: false,
maxSockets: Infinity,
maxFreeSockets: 256,
maxCachedSessions: 100,
_sessionCache: [Object],
[Symbol(kCapture)]: false
},
socketPath: undefined,
method: 'GET',
insecureHTTPParser: undefined,
path: '/timeline/timeline/',
_ended: true,
res: IncomingMessage {
_readableState: [ReadableState],
readable: false,
_events: [Object: null prototype],
_eventsCount: 3,
_maxListeners: undefined,
socket: [TLSSocket],
connection: [TLSSocket],
httpVersionMajor: 1,
httpVersionMinor: 1,
httpVersion: '1.1',
complete: true,
headers: [Object],
rawHeaders: [Array],
trailers: {},
rawTrailers: [],
aborted: false,
upgrade: false,
url: '',
method: null,
statusCode: 404,
statusMessage: 'Not Found',
client: [TLSSocket],
_consuming: false,
_dumped: false,
req: [Circular],
[Symbol(kCapture)]: false
},
aborted: false,
timeoutCb: null,
upgradeOrConnect: false,
parser: null,
maxHeadersCount: null,
reusedSocket: false,
[Symbol(kCapture)]: false,
[Symbol(kNeedDrain)]: false,
[Symbol(corked)]: 0,
[Symbol(kOutHeaders)]: [Object: null prototype] {
accept: [Array],
'user-agent': [Array],
'content-type': [Array],
cookie: [Array],
host: [Array]
}
},
response: {
status: 404,
statusText: 'Not Found',
headers: {
server: 'nginx',
date: 'Fri, 11 Sep 2020 20:08:25 GMT',
'content-type': 'text/html',
'content-length': '11116',
connection: 'close',
etag: '"5f5a5367-2b6c"'
},
config: {
url: 'https://ent.iledefrance.fr/timeline/timeline/',
method: 'get',
headers: [Object],
transformRequest: [Array],
transformResponse: [Array],
timeout: 0,
adapter: [Function: httpAdapter],
xsrfCookieName: 'XSRF-TOKEN',
xsrfHeaderName: 'X-XSRF-TOKEN',
maxContentLength: -1,
validateStatus: [Function: validateStatus],
maxRedirects: 0,
data: undefined
},
request: ClientRequest {
_events: [Object: null prototype],
_eventsCount: 2,
_maxListeners: undefined,
outputData: [],
outputSize: 0,
writable: true,
_last: true,
chunkedEncoding: false,
shouldKeepAlive: false,
useChunkedEncodingByDefault: false,
sendDate: false,
_removedConnection: false,
_removedContLen: false,
_removedTE: false,
_contentLength: 0,
_hasBody: true,
_trailer: '',
finished: true,
_headerSent: true,
socket: [TLSSocket],
connection: [TLSSocket],
_header: 'GET /timeline/timeline/ HTTP/1.1
' +
'Accept: application/json, text/plain, */*
' +
'User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:59.0) Gecko/20100101 Firefox/59.0
' +
'Content-Type:
' +
'Cookie: oneSessionId=2d6e5e78-44f5-47f3-a033-83049fbc579c:uR2V3HYMqMGzTV6vFokWtcL4E4E=; authenticated=true
' +
'Host: ent.iledefrance.fr
' +
'Connection: close
' +
'
',
_onPendingData: [Function: noopPendingOutput],
agent: [Agent],
socketPath: undefined,
method: 'GET',
insecureHTTPParser: undefined,
path: '/timeline/timeline/',
_ended: true,
res: [IncomingMessage],
aborted: false,
timeoutCb: null,
upgradeOrConnect: false,
parser: null,
maxHeadersCount: null,
reusedSocket: false,
[Symbol(kCapture)]: false,
[Symbol(kNeedDrain)]: false,
[Symbol(corked)]: 0,
[Symbol(kOutHeaders)]: [Object: null prototype]
},
data: '<!DOCTYPE html>
' +
'<html>
' +
'  <head>
' +
'    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
' +
'    <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
' +
'    <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600" media="screen" rel="stylesheet" />
' +
'    <link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css" media="screen" rel="stylesheet" />
' +
'
' +
'
' +
'    <style>
' +
'      *{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,caption,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;vertical-align:baseline;background:transparent}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}html{font-size:16px;line-height:24px;width:100%;height:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;overflow-y:scroll;overflow-x:hidden}img{vertical-align:middle;max-width:100%;height:auto;border:0;-ms-interpolation-mode:bicubic}body{min-height:100%;-webkit-font-smoothing:subpixel-antialiased}.clearfix{clear:both;zoom:1}.clearfix:before,.clearfix:after{content:&quot;\0020&quot;;display:block;height:0;visibility:hidden}.clearfix:after{clear:both}
' +
'
' +
'    </style>
' +
'    <style>
' +
' .sign.error-page-wrapper {
' +
"    font-family: 'Source Sans Pro', sans-serif;
" +
'    background-color: #179eca;
' +
'    position:relative;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .sign-container {
' +
'    width:450px;
' +
'    height:415px;
' +
'    margin:0 auto;
' +
'    position: relative;
' +
'    transform:rotate(-20deg);
' +
'    text-indent:-20px;
' +
'  }
' +
'
' +
'
' +
' .sign.error-page-wrapper .sign-container .nob {
' +
'    height:44px;
' +
'    width:44px;
' +
'    border-radius: 99px;
' +
'    border:12px solid #343c3f;
' +
'    position: absolute;
' +
'    top:0px;
' +
'    left:50%;
' +
'    margin-left:-22px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .sign-container .post {
' +
'    transition:background-color .5s linear;
' +
'    width: 190px;
' +
'    height: 15px;
' +
'    top: 71px;
' +
'    background-color: #343c3f;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .sign-container .post.left {
' +
'    position: absolute;
' +
'    transform:rotate(-30deg);
' +
'    left:35px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .sign-container .post.right {
' +
'    position: absolute;
' +
'    transform:rotate(30deg);
' +
'    right:35px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .sign-container .pane {
' +
'    transition:background-color .5s linear, border-color .5s linear;
' +
'    box-shadow: 0 5px 0 rgba(0,0,0,.1) inset, 5px 0 0 rgba(0,0,0,.1) inset, 15px 15px 0 rgba(0,0,0,.1);
' +
'    background-color: #fff;
' +
'    border:20px solid #343c3f;
' +
'    height:300px;
' +
'    text-align: center;
' +
'    position: absolute;
' +
'    top: 115px;
' +
'    left:0px;
' +
'    right:0px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .sign-container .pane .headline {
' +
'    transition:color .5s linear;
' +
'    margin-top:65px;
' +
'    margin-bottom: 10px;
' +
'    font-size:54px;
' +
'    line-height:68px;
' +
'    font-weight:600;
' +
'    letter-spacing: -2px;
' +
'    text-transform: uppercase;
' +
'    color:#ffba00;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .sign-container .pane.just-header .headline {
' +
'    margin-top:100px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .sign-container .pane .context {
' +
'    transition:color .5s linear;
' +
'    color:#ffba00;
' +
'    font-size:24px;
' +
'    line-height: 32px;
' +
'  }
' +
'
' +
'
' +
'  @media screen and (max-width: 500px) {
' +
'    .sign.error-page-wrapper {
' +
'      padding-top:10%;
' +
'    }
' +
'    .sign.error-page-wrapper .sign-container {
' +
'      width:280px;
' +
'      top: 0px !important;
' +
'    }
' +
'    .sign.error-page-wrapper .sign-container .post {
' +
'      width:100px;
' +
'      top:50px;
' +
'    }
' +
'    .sign.error-page-wrapper .sign-container .pane {
' +
'      top:70px;
' +
'      height:220px;
' +
'    }
' +
'    .sign.error-page-wrapper .sign-container .pane .headline {
' +
'      margin-top:20px;
' +
'      font-size:45px;
' +
'      margin-bottom: 6px;
' +
'    }
' +
'    .sign.error-page-wrapper .sign-container .pane.just-header .headline {
' +
'      margin-top: 39px;
' +
'      line-height: 55px;
' +
'    }
' +
'    .sign.error-page-wrapper .sign-container .pane .context {
' +
'      font-size:20px;
' +
'      line-height: 28px;
' +
'    }
' +
'  }
' +
'
' +
'
' +
'
' +
'
' +
' .sign.error-page-wrapper .text-container {
' +
'    max-width:425px;
' +
'    position: absolute;
' +
'    bottom:20px;
' +
'    left:35px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .text-container .headline {
' +
'    transition:color .5s linear;
' +
'    font-size:40px;
' +
'    line-height: 52px;
' +
'    letter-spacing: -1px;
' +
'    margin-bottom: 5px;
' +
'    color:rgba(255,255,255,.3);
' +
'  }
' +
' .sign.error-page-wrapper .text-container .context {
' +
'    transition:color .5s linear;
' +
'    font-size:18px;
' +
'    line-height:27px;
' +
'    color:#fff;
' +
'  }
' +
' .sign.error-page-wrapper .text-container .context p {
' +
'    margin:0;
' +
'  }
' +
' .sign.error-page-wrapper .text-container .context p + p {
' +
'    margin-top:10px;
' +
'  }
' +
' .sign.error-page-wrapper .buttons-container {
' +
'    margin-top: 20px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .buttons-container a {
' +
'    transition: text-indent .2s linear, color .5s linear, border-color .5s linear;
' +
'    font-size:16px;
' +
'    text-transform: uppercase;
' +
'    text-decoration: none;
' +
'    color:#fff;
' +
'    border:2px solid white;
' +
'    border-radius: 99px;
' +
'    padding:9px 0 10px;
' +
'    width:195px;
' +
'    overflow: hidden;
' +
'    text-align:center;
' +
'    display:inline-block;
' +
'    position: relative;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .buttons-container a:hover {
' +
'    background-color:rgba(255,255,255,.1);
' +
'    text-indent: 17px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .buttons-container a:first-child {
' +
'    margin-right:25px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .buttons-container .fa {
' +
'    transition:left .2s ease-out;
' +
'    position: absolute;
' +
'    left:-50px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .buttons-container .fa-warning {
' +
'    font-size:16px;
' +
'    top:14px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .buttons-container a:hover .fa-warning {
' +
'    left:0px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .buttons-container .fa-power-off {
' +
'    font-size:16px;
' +
'    top:14px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .buttons-container a:hover .fa-power-off {
' +
'    left:0px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .buttons-container .fa-home {
' +
'    font-size:18px;
' +
'    top:12px;
' +
'  }
' +
'
' +
' .sign.error-page-wrapper .buttons-container a:hover .fa-home {
' +
'    left:25px;
' +
'  }
' +
'
' +
'  @media screen and (max-width: 500px) {
' +
'   .sign.error-page-wrapper .text-container {
' +
'      bottom:20px;
' +
'      left:20px;
' +
'      right:20px;
' +
'    }
' +
'   .sign.error-page-wrapper .text-container .header {
' +
'      font-size:32px;
' +
'      line-height:40px;
' +
'    }
' +
'   .sign.error-page-wrapper .text-container .context {
' +
'      font-size:15px;
' +
'      line-height: 22px;
' +
'    }
' +
'   .sign.error-page-wrapper .buttons-container {
' +
'      overflow: hidden;
' +
'    }
' +
'   .sign.error-page-wrapper .buttons-container a {
' +
'      font-size:14px;
' +
'      padding:8px 0 9px;
' +
'      width:45%;
' +
'      float:left;
' +
'      margin:0;
' +
'    }
' +
'   .sign.error-page-wrapper .buttons-container a + a {
' +
'      float:right;
' +
'    }
' +
'   .sign.error-page-wrapper .buttons-container a:hover {
' +
'      text-indent: 0px;
' +
'    }
' +
'   .sign.error-page-wrapper .buttons-container .fa {
' +
'      display:none;
' +
'    }
' +
'  }
' +
'</style>
' +
'    <style>
' +
'
' +
'    .background-color {
' +
'      background-color: #179ECA !important;
' +
'    }
' +
'
' +
'
' +
'    .primary-text-color {
' +
'      color: #FFFFFF !important;
' +
'    }
' +
'
' +
'    .secondary-text-color {
' +
'      color: #73c5df !important;
' +
'    }
' +
'
' +
'    .sign-text-color {
' +
'      color: #FFBA00 !important;
' +
'    }
' +
'
' +
'    .sign-frame-color {
' +
'      color: #343C3F;
' +
'    }
' +
'
' +
'    .pane {
' +
'      background-color: #FFFFFF !important;
' +
'    }
' +
'
' +
'    .border-button {
' +
'      color: #FFFFFF !important;
' +
'      border-color: #FFFFFF !important;
' +
'    }
' +
'    .button {
' +
'      background-color: #FFFFFF !important;
' +
'      color:  !important;
' +
'    }
' +
'
' +
'
' +
'</style>
' +
'  </head>
' +
'  <body class="sign error-page-wrapper background-color background-image">
' +
'    <div class="sign-container">
' +
'        <div class="nob"></div>
' +
'        <div class="post left"></div>
' +
'        <div class="post right"></div>
' +
'        <div class="pane">
' +
'                <div class="headline sign-text-color">
' +
'                        404
' +
'                </div>
' +
'                <div class="context sign-text-color">
' +
'                        Oops, la page que<br>
' +
"                        vous cherchez n'existe pas.
" +
'                </div>
' +
'        </div>
' +
'</div>
' +
'<div class="text-container">
' +
'        <div class="headline secondary-text-color">
' +
'                404
' +
'        </div>
' +
'        <div class="context primary-text-color">
' +
'                <p>
' +
"                        Vous voulez certainement revenir &agrave; la page d'accueil.<br>
" +
"                        Si vous pensez qu'il s'agit d'un dysfonctionnement, merci de le signaler.
" +
'                </p>
' +
'        </div>
' +
'        <div class="buttons-container">
' +
`                <a class="border-button" href="https://prodng.ent.iledefrance.fr" target="_blank"><span class="fa fa-home"></span> Page d'accueil</a>
` +
'        </div>
' +
'</div>
' +
'
' +
'    <script>
' +
`      function ErrorPage(e,t,n){this.$container=$(e),this.$contentContainer=this.$container.find(n=="sign"?".sign-container":".content-container"),this.pageType=t,this.templateName=n}ErrorPage.prototype.centerContent=function(){var e=this.$container.outerHeight(),t=this.$contentContainer.outerHeight(),n=(e-t)/2,r=this.templateName=="sign"?-100:0;this.$contentContainer.css("top",n+r)},ErrorPage.prototype.initialize=function(){var e=this;this.centerContent(),this.$container.on("resize",function(t){t.preventDefault(),t.stopPropagation(),e.centerContent()}),this.templateName=="plain"&&window.setTimeout(function(){e.$contentContainer.addClass("in")},500),this.templateName=="sign"&&$(".sign-container").animate({textIndent:0},{step:function(e){$(this).css({transform:"rotate("+e+"deg)","transform-origin":"top center"})},duration:1e3,easing:"easeOutBounce"})},ErrorPage.prototype.createTimeRangeTag=function(e,t){return"<time utime="+e+' simple_format="MMM DD, YYYY HH:mm">'+e+"</time> - <time utime="+t+' simple_format="MMM DD, YYYY HH:mm">'+t+"</time>."},ErrorPage.prototype.handleStatusFetchSuccess=function(e,t){if(e=="503")$("#replace-with-fetched-data").html(t.status.description);else if(!t.scheduled_maintenances.length)$("#replace-with-fetched-data").html("<em>(there are no active scheduled maintenances)</em>");else{var n=t.scheduled_maintenances[0];$("#replace-with-fetched-data").html(this.createTimeRangeTag(n.scheduled_for,n.scheduled_until)),$.fn.localizeTime()}},ErrorPage.prototype.handleStatusFetchFail=function(e){$("#replace-with-fetched-data").html("<em>(enter a valid StatusPage.io url)</em>")},ErrorPage.prototype.fetchStatus=function(e,t){if(!e||!t||t=="404")return;var n="",r=this;t=="503"?n=e+"/api/v2/status.json":n=e+"/api/v2/scheduled-maintenances/active.json",$.ajax({type:"GET",url:n}).success(function(e,n){r.handleStatusFetchSuccess(t,e)}).fail(function(e,n){r.handleStatusFetchFail(t)})};
` +
`      var ep = new ErrorPage('body', "404", "sign");
` +
'      ep.initialize();
' +
'
' +
'      // hack to make sure content stays centered >_<
' +
"      $(window).on('resize', function() {
" +
"        $('body').trigger('resize')
" +
'      });
' +
'
' +
'    </script>
' +
'
' +
'
' +
'  </body>
' +
'</html>
'
},
isAxiosError: true,
toJSON: [Function]
}

J’espère que cela te permettra de voir une des causes potentielles

Ok,

Tu a configurer quel lien dans ton équipement ?

Cdt
Thibaut

J’ai remplacé le nom du champs utilisateur pour la copie écran :

Hello,

On est d’accord que c’est un compte enfant ?

Tu peux me donné ce que tu a remplis dans le champs url ?

Cdt
Thibaut

https://0941470m.index-education.net/pronote/

Et oui c’est le compte de ma fille, j’attends les identifiants parents

Ok, Donc c’est bien ce que je pensait, c’est déjà détecter et réglée, sa devrais sortir dans la prochaine beta. (J’espère ce soir)

On a trouvé un petit bug et le Lycée Champlain était dans la liste des établissement concernée :wink:

Cdt
Thibaut

Oui c’est bien champain :slight_smile:

Mon IP est blacklisté, je vais désactiver l’équipement et attendre la maj afin de débloquer mon @IP:

Merci de ton retour

@Sbo ok, et pour info, ton identifiant je l’ai maintenant que tu m’as dit que tu es blacklist :wink:

J’étais délégué de la CVL régional et donc j’ai encore accès à l’info des établissement et des utilisateur de l’ent jusqu’à fin du mois (Quand il y aura les nouvelle élection :slight_smile: )

Ps : Je conseil a ta fille de se présenter au CVL de son lycée si elle en a le temps.
C’est ultra intéressant même au niveaux de l’établissement

Cdt
Thibaut

Merci de l’information, je transmettrais l’information à ma fille.

1 « J'aime »

Hello,

Le sujet est résolu ?
Si oui, tu peux mettre le message qui ta aidée en solution ?

Cdt
Thibaut

Sans faute, je vais tester ce soir, cela fait un baille que j’ai pas jeté un oeil dessus.

C’est bon après maj.

Version courante du plugin :

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.